package org.zht.dormpro.auth.service;

import org.zht.dormpro.auth.bean.PageBean;
import org.zht.dormpro.auth.bean.Tree;
import org.zht.dormpro.pub.constant.Enums;
import org.zht.dormpro.auth.model.SysPermission;
import org.zht.dormpro.auth.model.SysUser;
import org.zht.dormpro.auth.model.SysUserRole;

import java.util.ArrayList;
import java.util.List;

public interface ISysUserService {

    SysUser getSysUserByUsercode(String id);

    List<Tree<SysPermission>> getUserMenuTree(Integer userId);

    List<SysUser> getUserByCondition(PageBean pageBean);

    Integer addUser(SysUser sysUser);

    List<SysPermission> getPermissionListById(Integer userid);

    boolean deleteUserRoRL(Integer id, Enums.URStatus urStatus);

    List<SysUserRole> getUserRoRL(Integer id, Enums.URStatus urStatus);

    boolean addRoleUserRL(ArrayList<String> strings, Integer id);

    boolean deleteUser(Integer id);

    SysUser getSysUserById(Integer id);

    boolean update(SysUser sysUser);

    boolean updateUserRoleRL(ArrayList<String> strings, Integer id);

    boolean resetPassword(Integer id,String password);
}
